/**
 * Created by kris on 2017/5/13.
 */
/**
 * 错误处理，主要用于处理AJax操作
 * @param status
 * @param msg
 */
function errorHandler(status, msg) {
    switch (status) {
        case (500) :
            try {
                var result = $.parseJSON(msg);
                $.messager.alert('操作失败', result.msg, 'error');
            } catch (e) {
                $.messager.alert('操作失败', '系统内部错误，请联系系统管理员', 'error');
            }

            break;
        case (401) :
            $.messager.alert({
                title: '错误',
                msg: '您未登陆或登陆超时，请重新登陆！',
                icon: 'error',
                fn: function () {
                }
            });
            break;
        case (403) :
            $.messager.alert('错误', '您无权操作！', 'error');
            break;
        case (408) :
            $.messager.alert('错误', '请求超时！', 'error');
            break;
        case (404) :
            $.messager.alert('错误', '您访问的资源不存在！', 'error');
            break;
        default :
            $.messager.alert('错误', '未知异常', 'error');
    }
}
if ($.fn.datagrid) {
    $.fn.datagrid.defaults.pageList = [35,
        100];
    $.fn.datagrid.defaults.pageSize = 35;
    $.fn.datagrid.defaults.onLoadError = function (result) {
        var status = result.status;
        errorHandler(status);
    }
}
if ($.fn.panel) {
    $.extend($.fn.panel.defaults, {
        onLoadError: function (result) {
            var status = result.status;
            errorHandler(status);

        },
        loadingMessage: '正在加载...'
    });
}
if ($.fn.dialog) {
    $.fn.dialog.defaults.onLoadError = function (result) {
        $(this).dialog('close');
        var status = result.status;
        errorHandler(status);
    }
}
if ($.fn.numberbox) {
    //千分位
    $.fn.numberbox.defaults.groupSeparator = ',';
}
// 设置jQuery Ajax全局的参数

$.ajaxSetup({
    type: "POST",
    error: function (jqXHR, textStatus, errorThrown) {
        errorHandler(jqXHR.status, jqXHR.responseText);
    }
});
/**
 * 自定义命名空间方法
 * @returns {*}
 */
$.namespace = function (str) {
    var parts = str.split("."),
        parent = $,
        i = 0,
        l = 0;

    if (parts[0] === "$") {
        parts = parts.slice(1);
    }
    for (i = 0, l = parts.length; i < l; i++) {
        if (typeof parent[parts[i]] === "undefined") {
            parent[parts[i]] = {};
        }
        parent = parent[parts[i]];
    }
    return parent;
};